﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations.Schema;

namespace Echegoyen.Models
{
    [Table("Reservas")]
    public class Reserva
    {

        public Reserva()
        { 
        }

        public Reserva(int id, Usuario socio, Material material, DateTime fecha) {

            this.ReservaId = id;
            this.Usuario = socio;
            this.Material = material;
            this.Fecha = fecha;
            this.Estado = "Pendiente";
        }

        public int ReservaId { get; set; }

        public int UsuarioId { get; set; }
        public virtual Usuario Usuario { get; set; }

        public int MaterialId { get; set; }
        public virtual Material Material { get; set; }

        public DateTime Fecha { get; set; }

        public string Estado { get; set; } // estados: Pendiente o Concretado o Cancelado


        public void Cancelar() {

            if (!this.Estado.Equals("Concretado"))
            {
                this.Estado = "Cancelado";
            }
        }

        public void Concretar() {
            this.Estado = "Concretado";
        }

    }
}
